User purchase profiling from electronic purchase confirmation messages

ABSTRACT

A method may include a processor obtaining an authorization to identify electronic purchase confirmation messages in a plurality of electronic messages for a user and to maintain a user purchase profile of the user. The processor may collect the plurality of electronic messages for the user, identifying the electronic purchase confirmation messages in the plurality of electronic messages, and determine a purchase category and a purchase amount from each of the electronic purchase confirmation messages that is identified. The processor may further obtain a verification of the purchase category that is determined from each of the electronic purchase confirmation messages that is identified, update the user purchase profile in accordance with the purchase category and the purchase amount from each of the electronic purchase confirmation messages that is identified, and perform an automated action in accordance with the user purchase profile that is updated.

This application is a continuation of U.S. patent application Ser. No.15/442,915, filed Feb. 27, 2017, now U.S. Pat. No. 10,540,698, which isherein incorporated by reference in its entirety.

The present disclosure relates generally to identifying electronicpurchase confirmation messages in a plurality of electronic messages fora user, and more particularly to updating a user purchase profile of theuser based upon purchase categories and purchase amounts that aredetermined from the electronic purchase confirmation messages, andperforming an automated action in accordance with the user purchaseprofile.

BACKGROUND

Consumers and business make purchases from various types of vendorsacross the Internet. E-commerce has become the default way to dobusiness, even with local and small businesses. In addition, it iscommon in the retail industry to track customer purchases over time forboth online and in-person transactions. In some cases, the tracking ofcustomer purchases by a retailer may be shared with a customer. However,the access to and use of such information by the customer may belimited, and the needs and goals of the retailer may take precedence.

SUMMARY

In one example, the present disclosure provides a device, method, andnon-transitory computer-readable medium for identifying electronicpurchase confirmation messages in a plurality of electronic messages fora user. For example, a processor may obtain an authorization to identifyelectronic purchase confirmation messages in a plurality of electronicmessages for a user and to maintain a user purchase profile of the user.The processor may collect the plurality of electronic messages for theuser, identifying the electronic purchase confirmation messages in theplurality of electronic messages, and determine a purchase category anda purchase amount from each of the electronic purchase confirmationmessages that is identified. The processor may further obtain averification of the purchase category that is determined from each ofthe electronic purchase confirmation messages that is identified, updatethe user purchase profile in accordance with the purchase category andthe purchase amount from each of the electronic purchase confirmationmessages that is identified, and perform an automated action inaccordance with the user purchase profile that is updated.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure can be readily understood by considering thefollowing detailed description in conjunction with the accompanyingdrawings, in which:

FIG. 1 illustrates one example of a system in which examples of thepresent disclosure for identifying electronic purchase confirmationmessages in a plurality of electronic messages for a user may operate;

FIG. 2 illustrates an example of an electronic message that may berecognized as an electronic purchase confirmation message and from whicha purchase category and a purchase amount can be determined, inaccordance with the present disclosure;

FIG. 3 illustrates an example dashboard interface in accordance with thepresent disclosure;

FIG. 4 illustrates an example flowchart of a method for identifyingelectronic purchase confirmation messages in a plurality of electronicmessages for a user; and

FIG. 5 illustrates a high-level block diagram of a computing devicespecially programmed to perform the functions described herein.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe figures.

DETAILED DESCRIPTION

The present disclosure broadly discloses devices, non-transitory (i.e.,tangible or physical) computer-readable media, and methods foridentifying electronic purchase confirmation messages in a plurality ofelectronic messages for a user. Examples of the present disclosureprovide user-controlled purchase insights across merchants, and acrossproducts and purchase categories, by looking at electronic messaging(e.g., emails, Short Message Service (SMS) messages, and all types ofelectronic communications via which a user may receive a receipt orpurchase confirmation). For example, a user may have a transaction witha merchant. The merchant may requests payment and the user may providepayment. The purchase and payment may be an online transaction, or maybe at a point of sale, where the user provides an identity to themerchant and the merchant can thereby provide an electronicreceipt/confirmation to the user via an electronic communication.

In one example, the merchant may processes the payment and send anelectronic payment confirmation message to the user. In one example, thepayment may be processed through a payment server or clearinghouse,e.g., a bank, a credit card company, etc. In one example, the electronicpayment confirmation message may be sent through a messaging server foremail, SMS, etc. In one example, a copy of the electronic paymentconfirmation message may also be sent to a messaging monitor, such as atelecommunication network operator or other entity, in order to identifysale/purchase transactions. In one example, the messaging monitor mayforward identified sale/purchase transactions to an insight server foraggregation and for generating reports, predictions, visualizations,etc. In another example, the messaging monitor and insight server may becombined into a single device.

In one example, the present disclosure monitors communications toidentify sale/purchase transactions using machine learning techniques,such as identifying purchase confirmation-related words, phrases,symbols, and/or monetary character sets, such as: “receipt”,“confirmation”, “purchase”, “order”, “invoice”, “pro forma”, “shipping”,“tax”, “delivery”, “$”, “returns”, “warranty”, etc., or by identifyingthe source of particular emails, such as specific payment processors,large and/or well-known merchants, specific email addresses, and soforth. In one example, machine learning techniques are used to bothdetermine that a message is an electronic purchase confirmation message,and to categorize the purchase into one of a plurality of categories.For instance, one or more classifiers may be trained in accordance witha machine learning algorithm and then deployed to determine whether anelectronic purchase confirmation message is or is not associated with agiven purchase category. In one example, the plurality of purchasecategories may be defined by the user.

The electronic purchase confirmation message may be from the merchantitself, or may be from a credit card company or other payment processorconfirming the purchase transaction between the customer and themerchant. It should be noted that the examples of the present disclosureaggregate and analyze across multiple merchants and multiple paymentsystems. Thus, purchase confirmations may be contained in electroniccommunications from multiple credit card companies, multiplemerchants/vendors, and so forth. The present disclosure is alsouser/consumer-centric and allows a user to gain insights into their ownpurchases across vendors/merchants, as opposed to individualvendors/merchants simply tracking customer purchases over time.

In one example, the customer may provide feedback to an insight serveras to various inferences and conclusions reached by the insight server.For example, the user may indicate that various electronic purchaseconfirmation messages have been miscategorized, or the user may verifythat various electronic purchase confirmation messages have beenproperly categorized, thereby improving the classifier accuracy.

In one example, the present disclosure categorizes transactions into oneof a plurality of categories, keeps totals, and provides insight on thenumber of purchases and amounts spent in each category via a dashboardinterface. In one example, the aggregation of the categorizedtransactions, total amounts spent, amounts spent with each merchant, andso forth may be stored as a user purchase profile. In addition, thepresent disclosure may provide for automated actions in response to auser's purchase profile. For example, a user may schedule an automatedand/or recurring purchase based upon a detecting of a purchase of a sameitem, or a related item, such as scheduling a purchase of a new waterfilter in six months from a detected purchase. In one example, where theinsight server is deployed by a telecommunication network, the automatedaction may be taken according to a rule defined by the network operator,rather than the user. For instance, if a user has purchased greater thana certain dollar amount of electronic devices within the last year, thetelecommunication network operator may upgrade the bandwidth of aconnection to the user's home, may deploy additional resources to anarea associated with the user, such as additional media servers, CDNedge caches, and so forth. These and other aspects of the presentdisclosure are discussed in greater detail below in connection with theexamples of FIGS. 1-5.

To aid in understanding the present disclosure, FIG. 1 illustrates anexample system 100 comprising a plurality of different networks in whichexamples of the present disclosure for identifying electronic purchaseconfirmation messages in a plurality of electronic messages for a usermay operate. As illustrated in FIG. 1, the system 100 includes atelecommunication network 110, which may comprise a core network withcomponents for telephone services, Internet services, and/or televisionservices (e.g., triple-play services, etc.) that are provided tocustomers (broadly “subscribers”), and to peer networks. In one example,telecommunication network 110 may combine core network components of acellular network with components of a triple-play service network. Forexample, telecommunication network 110 may functionally comprise a fixedmobile convergence (FMC) network, e.g., an IP Multimedia Subsystem (IMS)network. In addition, telecommunication network 110 may functionallycomprise a telephony network, e.g., an Internet Protocol/Multi-ProtocolLabel Switching (IP/MPLS) backbone network utilizing Session InitiationProtocol (SIP) for circuit-switched and Voice over Internet Protocol(VoIP) telephony services. Telecommunication network 110 may alsofurther comprise a broadcast television network, e.g., a traditionalcable provider network or an Internet Protocol Television (IPTV)network, as well as an Internet Service Provider (ISP) network. Withrespect to television service provider functions, telecommunicationservice provider network 110 may include one or more television serversfor the delivery of television content, e.g., a broadcast server, acable head-end, a video-on-demand (VoD) server, and so forth. Forexample, telecommunication network 110 may comprise a video super huboffice, a video hub office and/or a service office/central office. Inone example, telecommunication network 110 may also include anapplication server (AS) 114 and one or more message servers 118, asdescribed in greater detail below. For ease of illustration, variouscomponents of telecommunication network 110 are omitted from FIG. 1.

In one example, each of access networks 120 may comprise a DigitalSubscriber Line (DSL) network, a broadband cable access network, a LocalArea Network (LAN), a cellular or wireless access network, and the like.For example, access networks 120 may transmit and receive communicationsbetween devices 121-123, e.g., endpoint devices, and betweentelecommunication network 110 and devices 121-123 relating to voicetelephone calls, communications with web servers via the Internet, andso forth. Access networks 120 may also transmit and receivecommunications between devices 121-123 and other networks and devices,such as merchant networks 130, payment networks 140, messaging networks150, insight network 160, and so forth, via telecommunication network110 and/or the Internet in general. Devices 121-123 may each comprise atelephone, e.g., for analog or digital telephony, a mobile device, suchas a cellular smart phone, a laptop, a tablet computer, etc., a router,a gateway, a desktop computer, a plurality or cluster of such devices, atelevision (TV), e.g., a “smart” TV, a set-top box (STB), and the like.

In one example, any of access networks 120 may be operated by adifferent entity from that which operates telecommunication network 110.For example, access networks 120 may include an Internet serviceprovider (ISP) network, a cable access network, and so forth. In anotherexample, any of access networks 120 may be operated by a same entitythat operates telecommunication network 110. For instance, accessnetworks 120 may include a cellular access network, implementing suchtechnologies as: global system for mobile communication (GSM), e.g., abase station subsystem (BSS), GSM enhanced data rates for globalevolution (EDGE) radio access network (GERAN), or a UMTS terrestrialradio access network (UTRAN) network, among others, wheretelecommunication network 110 may provide mobile core network functions,e.g., of a public land mobile network (PLMN)-universal mobiletelecommunications system (UMTS)/General Packet Radio Service (GPRS)core network, or the like. In still another example, access networks 120may include a home network, which may include a home gateway, whichreceives data associated with different types of media, e.g.,television, phone, and Internet, and separates these communications forthe appropriate devices. For example, data communications, e.g.,Internet Protocol (IP) based communications may be sent to and receivedfrom a router in one of access networks 120, which receives data fromand sends data to the devices 121-123, respectively.

In this regard, it should be noted that in some examples, devices121-123 may connect to access networks 120 via one or more intermediatedevices, such as a home gateway and router, e.g., where access networks120 comprise broadband cable access networks, ISPs and the like, whilein another example, devices 121-123 may connect directly to accessnetworks 120, e.g., where access networks 120 may comprise local areanetworks (LANs) and/or home networks, and the like.

As illustrated in FIG. 1, the system 100 further includes merchantnetworks 130, payment networks 140, messaging networks 150 and insightnetwork 160, which may represent corporate, governmental or educationalinstitution LANs, and the like, or a distributed network connectedthrough permanent virtual circuits (PVCs), virtual private networks(VPNs), and the like for providing data and voice communications forvarious entities. For example, in accordance with the presentdisclosure, each of merchant networks 130 may comprise a network withvarious computing devices supporting a merchant's business, includingemail servers, web servers hosting various publicly accessible webpagesproviding information on goods and services provided by a merchant, andproviding various options for contacting the merchant via email, onlinechat, etc., and/or for online ordering of the goods and servicesadvertised on the various webpages. In one example, each of merchantnetworks 130 may also include servers for various functions including:inventory maintenance, supply chain management, purchasing and orderingfulfillment, customer account maintenance, and the like, as well aspersonnel management, payroll, and so forth. As illustrated in FIG. 1,merchant servers 134 may represent any of the above-described devices.Merchant networks 130 may also include various user endpoint devices(not-shown) for customer facing personnel (e.g., customer serviceagents, retail store employees, etc.) and non-customer facing personnelof a merchant, such as buyers and purchasing agents, advertising andmarketing personnel, warehouse personnel, fraud prevention personnel,management personnel, etc. For example, a merchant network 130 may alsoinclude point-of-sale terminals and/or checkout terminals for acceptingpayment at various retail locations, for example.

In one example, merchant servers 134 in merchant networks 130 maycommunicate with customer devices, such as devices 121-123, via accessnetworks 120, telecommunication network 110 and/or the Internet ingeneral, to complete online purchase transactions relating to goodsand/or services provided by the respective merchants associated withmerchant networks 130. For example, the users of device 121-123, and anyother number of users may also comprise credit card holders of creditcards issued by a credit card issuer associated with one of paymentnetworks 140 and/or account holders of a bank associated with one ofpayment networks 140, and may also comprise customers of the respectivemerchants associated with merchant networks 130. Customers associatedwith devices 121-123 may also engage in in-person purchase transactionsby being physically present at a retail location of one of the merchantsassociated with merchant networks 130, for instance. In one example, themerchant servers 134 may record and store information regarding purchasetransactions and/or may send the information regarding the purchasetransactions to devices on other networks, as described in greaterdetail below. The information regarding the purchase transactions mayinclude a time, a date, a purchase amount, and a customer identifier ofthe customer, such as an account number and/or a customer number of thecustomer with the merchant, a credit card account number of thecustomer, and so forth. It should be noted that some customers may payin-person with cash or a similar non-personally identifiable form ofpayment. However, a purchase transaction may still be associated with acustomer by asking the customer to provide a customer identifier at thetime of the transaction, e.g., by a checkout cashier at a retaillocation of a merchant entering the customer identifier into a checkoutterminal.

In one example, each of payment networks 140 may comprise a network withvarious computing devices of a credit card issuer, a bank, or other typeof payment clearinghouse. Aspects of payment networks 140 may be similarto that which is described above in connection with example merchantnetworks 130, such as various user endpoint devices for personnel ofpayment networks 140, web servers for customers to login and accesscustomer account information and/or to access other informationregarding one of the payment networks 140, email servers forcommunicating with customers/account holders, for email hosting forpersonnel of the payment networks 140, and so forth. In one example,payment networks 140 may maintain payment servers 144 for authorizingpayments for customer purchase transactions, maintaining accountingswith various merchants, such as merchants associated with merchantnetworks 130, maintaining accountings for various customers, such ascustomers associated with endpoint devices 121-123, and so on. Forinstance, merchant servers 134 in merchant networks 130 may includeservers supporting online and/or in-store purchases and may beauthorized by a credit card issuer associated with one of paymentnetworks 140 to accept credit card payments, may be authorized by a bankto accept checking account or debit card payments, and so forth. Inparticular, merchant servers 134 may communicate with payment servers144 in payment networks 144 via telecommunication network 110 and/or theInternet in general to obtain credit card authorizations, bankauthorizations, and the like, in any manner that is known within theindustry. For instance, connections between telecommunication network110, access networks 120, merchant networks 130, payment networks 140,messaging networks 150 and insight network 160 may comprise the Internetin general, internal links under the control of a singletelecommunication service provider network, links between peer networks,and so forth.

In one example, in addition to authorizing various purchase transactionsbetween customers and merchants associated with merchant networks 130,payment servers 144 may also record and store information regardingpurchase transactions and/or may send the information regarding thepurchase transactions to devices on other networks, as described ingreater detail below. The information regarding the purchasetransactions may include a time, a date, a purchase amount, a merchantidentifier, a customer identifier of the customer, such as an accountnumber and/or a customer number of the customer with the merchant, acredit card account number of the customer, a location of the purchasetransaction, e.g., a retail location, or, for an online purchasetransaction, a location of the user and/or the merchant, and so forth.

Messaging networks 150 may include messaging servers 154 for sendingvarious types of electronic messages, including emails, short messageservice (SMS) messages, multimedia message service (MMS) messages, chatmessages, such as via a messaging platform of an “over-the-top”messaging provider (broadly “instant message applications”), and thelike. In one example, messaging servers 154 may send messages on behalfof merchants associated with merchant networks 130 and/or entitiesassociated with payment networks 140 regarding purchase transactions ofvarious users (e.g., customers of the merchants associated with merchantnetworks 130 and/or account holders with entities associated withpayment networks 140). In particular, message servers 154 may sendmessages to various user/customer, such as users of devices 121-123,comprising electronic purchase confirmation messages. The electronicpurchase confirmation messages may include electronic receipts, purchaseorders, packing lists, credit card or banking alerts, tickets, vouchers,itineraries, and the like. The electronic purchase confirmation messagesmay be sent by message servers 154 on behalf of merchants associatedwith merchant networks 130 and/or entities, such as banks, credit cardissuers, or other payment clearinghouses associated with paymentnetworks 140. It should also be noted that in another example, merchantnetworks 130 and/or payment networks 140 may also include their ownrespective message servers for sending electronic purchase confirmationmessages and other communications to user/customers, such as usersassociated with devices 121-123.

In one example, the electronic messages may be sent to devices 121-123and/or to accounts associated with the users of devices 121-123 (e.g.,email accounts) via access networks 120, telecommunication network 110and/or the Internet in general. In one example, message servers 118 intelecommunication network 110 may receive, forward, and/or storemessages on behalf of devices 121-123 and/or the users of devices121-123. For instance, message servers 118 may include an email serverwhich maintains an inbox and outbox for an email account for each of theusers associated with devices 121-123, respectively. Message servers 118may also include an SMS server which may store SMS messages for devices121-123 until such devices are connected to and/or reachable bytelecommunication network 110, and which may deliver SMS messages whenan intended recipient device of devices 121-123 is available. In thisregard, message servers 118 may also forward copies of electronicmessages processed by the message servers 118 to application server (AS)114 and/or insight server 164. In one example, the electronic messagesmay be provided to AS 114 and/or insight server 164 for processing inaccordance with authorizations from the users of devices 121-123respectively. In a different example, AS 114 may be configured toprovide one or more operations or functions for identifying electronicpurchase confirmation messages in a plurality of electronic messages fora user, in accordance with the present disclosure.

In one example, the system 100 includes insight network 160 with aninsight server 164. In one example, insight server 164 may comprise acomputing system or server, such as computing system 500 depicted inFIG. 5, and may be configured to provide one or more operations orfunctions for identifying electronic purchase confirmation messages in aplurality of electronic messages for a user. Similarly, in a differentexample, AS 114 may be configured to provide one or more operations orfunctions for identifying electronic purchase confirmation messages in aplurality of electronic messages for a user, in accordance with thepresent disclosure. It should be noted that as used herein, the terms“configure” and “reconfigure” may refer to programming or loading acomputing device with computer-readable/computer-executableinstructions, code, and/or programs, e.g., in a memory, which whenexecuted by a processor of the computing device, may cause the computingdevice to perform various functions. Such terms may also encompassproviding variables, data values, tables, objects, or other datastructures or the like which may cause a computer device executingcomputer-readable instructions, code, and/or programs to functiondifferently depending upon the values of the variables or other datastructures that are provided. A flowchart of an example method ofidentifying electronic purchase confirmation messages in a plurality ofelectronic messages for a user is illustrated in FIG. 4 and described ingreater detail below.

To illustrate, in one example, AS 114 and/or insight server 164 mayaccumulate electronic messages for users associated with devices 121-123from message servers 118 and/or from message servers 154. Alternatively,or in addition, AS 114 and/or insight server 164 may accumulateelectronic messages from merchant servers 134 and/or payment servers144. For example, merchant networks 130 and/or payment networks 140 mayinclude messaging servers which may perform the same or similarfunctions as message servers 154, including the sending of electronicpurchase confirmation messages. In one example, the respective users ofdevices 121-123 may authorize merchants associated with merchantnetworks 130 and/or entities associated with payment networks 140 toshare purchase confirmation messages with AS 114 and/or insight server164. Thus, the messages may be intercepted by AS 114 and/or insightserver 164, or copied to such devices per authorizations from the usersassociated with devices 121-123, respectively.

Regardless of the manner in which the electronic messages are obtained,AS 114 and/or insight server 164 may then: identify electronic purchaseconfirmation messages in the electronic messages, determine purchasecategories and purchase amounts from each of the electronic purchaseconfirmation messages, obtain verifications of the purchase categoriesthat are determined, update user purchase profiles in accordance withthe purchase categories and the purchase amounts, perform automatedactions in accordance with user purchase profiles that are updated, andso forth. In this regard, in one example, AS 114 and/or insight server164 may communicate with devices 121-123 via access networks 120,telecommunication network 110 and/or the Internet in general to obtainuser authorizations, to obtain verifications of purchase categories thatare determined for electronic purchase confirmation messages in theelectronic messages for the respective users, and so forth.

Further details regarding the functions that may be implemented by AS114 and/or insight server 164, merchant servers 134, payment servers144, message servers 154, and so forth are discussed in greater detailbelow in connection with the examples of FIGS. 2-5. In addition, thoseskilled in the art will realize that the system 100 may be implementedin a different form than that which is illustrated in FIG. 1, or may beexpanded by including additional endpoint devices, access networks,network elements, application servers, etc. without altering the scopeof the present disclosure. Thus, these and other modifications are allcontemplated within the scope of the present disclosure.

To further aid in understanding the present disclosure, FIG. 2illustrates an example of an electronic message 200 that may berecognized as an electronic purchase confirmation message and from whicha purchase category and a purchase amount can be determined. Asillustrated in FIG. 2, the electronic message 200 may comprise an email.However, it should be understood that various electronic messages thatmay be processed in accordance with examples of the present disclosuremay take different forms that generally include readable text, such asSMS messages, instant messages, etc. In one example, a device, e.g., aserver, such as 114 or insight server 164 in FIG. 1, may process theelectronic message 200 in order to determine that it is, in fact, anelectronic purchase confirmation message rather than a message with someother type of content. In one example, the electronic message 200 may beprocessed to identify purchase confirmation-related words, phrases,symbols, or monetary character sets. For instance, as can be seen inFIG. 2, various words, phrases and symbols that are purchaseconfirmation-related are indicated by the solid lined boxes 210 (forease of illustration, not all of the solid lined boxes 210 arespecifically labeled). For instance, the solid lined boxes 210 includethe words or phrases: “order”, “confirmation”, “price”, “credit card”,“tax”, and “charge”. In addition, the solid lined boxes 210 include themonetary character sets “137.00”, “$100.00”, “$7.00” and “$30.00”.Several of these monetary character sets also include the dollarsign/symbol “$”.

In one example, the purchase confirmation-related words, phrases,symbols, or monetary character sets may be identified using apre-defined set of purchase confirmation-related words, phrases, symbolsand/or monetary character templates which may include at least the itemsindicated in the solid lined boxes 210, or at least a template of theseitems. Examples of a template may include: a dollar sign followed by annumber of numeric characters, e.g., “$_ _ _ _”, a dollar sign followedby any number of numeric characters followed by a decimal point followedby two numerical character, e.g., “$_ _ _ . _ _”, or a similar templatewithout a dollar sign, e.g., “_ _ _ . _ _”, for instance. Thepre-defined set of purchase confirmation-related words, phrases, symbolsand monetary character templates may also include other words andphrases that are purchase confirmation-related, such as “invoice”,“pro-form”, “shipping & handling”, “COD”, “purchase”, “sale”,“discount”, etc. It should be noted that purchase confirmation-relatedwords, phrases, and symbols may also include words and phrases that maybe considered as shipping or delivery-related, and may includeabbreviations, such as “COD” for “charge on delivery”, “FOB” for “freeon board”, and so forth.

In one example, the electronic message 200 may be determined to be anelectronic purchase confirmation message when a certain threshold isreached, such as a threshold number of purchase confirmation-relatedwords, phrases, symbols, or monetary character sets, a thresholdpercentage of purchase confirmation-related words, phrases, symbols, ormonetary character sets with respect to a total number of characters orwords of the message, and so forth. It should be noted that the parsingof characters to identify the purchase confirmation-related words,phrases, symbols and/or monetary character sets may includeoptical-character recognition to identify characters in an electronicimage. However, messages such as email or SMS messages may include textin an American Standard Code for Information Interchange (ASCII) format,or other type of standard format from which the characters comprisingthe message, and the order of the characters may be identified.

In the example of FIG. 2, the electronic message 200 may include tenpurchase confirmation-related words, phrases, symbols, or monetarycharacter sets from a total of 405 non-whitespace characters, or 78words. Accordingly, in one example, the threshold may be set to 0.014and the electronic message 200 may be identified as an electronicpurchase confirmation message where the ratio (rounded) of the number ofpurchase confirmation-related words, phrases, symbols and monetarycharacter sets to characters is 10÷405=.0247. In another example, thethreshold may be set to 0.067 and the electronic message 200 may beidentified as an electronic purchase confirmation message where theratio (rounded) of the number of purchase confirmation-related words,phrases, symbols and monetary character sets to words is 10÷78=0.1282.The foregoing are just two examples of the ratios and thresholds thatmay be used in accordance with the present disclosure. For instance, inanother example, different categories of purchase confirmation-relatedwords, phrases, symbols and monetary character sets may be givendifferent weightings in determining whether a threshold is exceeded fordetermining that an electronic message is an electronic purchaseconfirmation message. For instance, monetary character sets may be moreheavily weighted, certain words such as “invoice” and “tax” may be moreheavily weighted than other words such “sale” which may be just aslikely to be indicative of an advertisement as a purchase confirmation.Thus, these and other variations are all contemplated within the scopeof the present disclosure.

In one example, a pre-defined set of purchase confirmation-relatedwords, phrases, symbols and/or monetary character templates may bedefined by a telecommunication network operator or other entityproviding a device for identifying electronic purchase confirmationmessages in a plurality of electronic messages for a user, such as anoperator of telecommunication network 110 or insight network 160 ofFIG. 1. Similarly, a threshold for determining whether an electronicmessage comprises an electronic purchase confirmation message may be setby the same or another entity. Alternatively, or in addition, a user maycreate and/or edit a pre-defined set of purchase confirmation-relatedwords, phrases, symbols and/or monetary character templates that ispersonalized to the user. For instance, the user may make a large numberof purchases from a particular merchant that uses a form electronicpurchase confirmation message that may include a stock word, phrase orabbreviation that the user believes would help identify electronicpurchase confirmation messages from this particular merchant. In anotherexample, the user may be aware that he or she only receives electronicmessages that are purchase confirmation messages from a particularmerchant. Thus, the name of the merchant, or the merchant's emailaddress from which the messages originate may be added by the user tothe pre-defined set of purchase confirmation-related words, phrases,symbols and/or monetary character templates. In still another example,the determining of an electronic message, such as electronic message200, as being an electronic purchase confirmation message may compriseapplying and updating a machine learning algorithm, such as a binaryclassifier, that determines whether or not the electronic message is anelectronic purchase confirmation message. The machine learning algorithmmay be updated based upon verifications from a user as to whethercertain electronic messages are properly categorized by the machinelearning algorithm as either being an electronic purchase confirmationmessage or not.

In addition to determining that electronic message 200 is an electronicpurchase confirmation message, a purchase amount and a category of thepurchase may also be determined. In one example, the purchase amount maybe identified based upon recognizing monetary character sets, asdescribed above, and then selecting the highest dollar amount within themonetary character sets that are found. In another example, the purchaseamount may be determined by selecting the dollar amount from a monetarycharacter set that follows certain keywords or phrases, such as “totalpurchase amount:” for example.

As illustrated in FIG. 2, the dashed line boxes 220 illustrate variouswords, phrases and/or abbreviations that may comprise “features” thatare useable to categorize the electronic message 200 as being related toone of a plurality of purchase categories. For instance, the words andphrases “ticket order”, “seats”, “row”, “ticket price”, “ticket”, etc.,may be indicative that electronic message 200 is an electronic purchaseconfirmation message for a purchase of a ticket, which may be stronglycorrelated with “entertainment” (e.g., tickets to sporting events,concerts, etc.) and/or “vacation” (e.g., airline tickets) categories.However, the words and/or phrases “Charlestown Chiefs” and “SyracuseBulldogs” may be well known sports teams which are associated with the“entertainment” category, but not with a “vacation” category. Inaddition, the set of characters “abcxyz.com” may be a domain of asporting event ticket reseller and may therefore be determined tocomprise a feature that is associated with the “entertainment” category,whereas a domain of an airline may be associated with a “vacation” or“travel” category.

In one example, a machine learning algorithm may be used to generate aclassifier, such as a support vector machine (SVM), e.g., a binaryclassifier and/or a linear binary classifier, a multi-class classifier,a kernel-based SVM, etc., a distance-based classifier, e.g., a Euclideandistance-based classifier, or the like, that may be used to determine acategory of a purchase indicated in an electronic purchase confirmationmessage, such as electronic message 200. In one example, the machinelearning algorithm may be used to generate a series of classifiers,e.g., one for each of a plurality of possible purchase categories thatmay be defined by a user.

In one example, the machine learning algorithm may involve generatingand/or training a classifier (or multiple classifiers) using a trainingdata set. In one example, with respect to each category the trainingdata set may comprise positives examples of electronic purchaseconfirmation messages that may be indicated by a user as beingassociated with a particular category. In one example, the training dataset may also include negative examples of electronic purchaseconfirmation messages that may be indicated by a user as being notassociated with a particular category (or which may be inferred to notbe associated with a particular category based upon an indication fromthe user that the electronic purchase confirmation message is associatedwith a different category). In addition, in one example, the trainingdata set may include electronic purchase confirmation messages andindications of categories of such messages for a plurality of users. Forexample, a number of users may have the same or similar categories of“entertainment”. Thus, data from multiple users may be used to train aclassifier in accordance with the present disclosure. However, in oneexample, classifiers are trained and deployed in a manner personalizedto each user. Thus, for example, training data from other users may beused to train a classifier that will be used to categorize electronicpurchase confirmation messages for a given user. However, the givenuser's own training data may be given a preference, a greater weighting,etc.

In an example where the classifier comprises a support vector machine(SVM), the machine learning algorithm may calculate a hyper-plane in ahyper-dimensional space representing the feature space of all possibledata points that may be used to identify categories of electronicpurchase confirmation messages. The “features” may comprise whetherparticular words, phrases, abbreviations, and so forth appear in anelectronic purchase confirmation message, a number of appearance of suchwords, a percentage of words deemed related to a category versus a totalnumber of words in an electronic purchase conformation message, and soon. In one example, to supplement the training data set, a dictionary ofwords and phrases related to a particular category may be provided by auser or by an entity offering a device for identifying electronicpurchase confirmation messages in a plurality of electronic messages fora user, in accordance with the present disclosure. However, in anotherexample, the machine learning algorithm may determine features,including words and phrases that may be related to or associated with acategory, in an unsupervised manner. The hyper-plane may define aboundary in the feature space which separates positive examples fromnegative examples. However, it should be noted that the presentdisclosure is not limited to binary data points in the training dataset. For instance, in a multi-class classifier, a data point maycomprise a range of a plurality of possible ranges of a particularfeature, e.g., a number of instances of the word “ticket” may comprise afeature that can take one of 4 possible values: {[0], [1-3], [4-5],[5+]}. In addition, in a distance-based classifier, values for a datapoint may range from zero to a maximum value, for example.

Once a classifier is generated for a particular category or for aplurality of categories, the classifier may be applied to classifyadditional electronic messages, such as electronic message 200. Forinstance, the classifier may classify the electronic purchaseconfirmation message into one of two categories: within the purchasecategory, or not within the purchase category. For instance, variousfeatures of the electronic purchase conformation message may bequantified and applied to the classifier. For example, a vector in thefeature space may represent the various features of the electronicpurchase confirmation message, and the classifier may be used todetermine on which “side” of the hyper-plane the vector lies. As such,the classifier may determine whether the electronic purchaseconfirmation message is likely to be related to the purchase category,or not, based upon the result of the classification.

In one example, a confidence score may be calculated and provided alongwith the classification. For instance, a distance between the vectorrepresenting the customer and the hyperplane may be calculated.Thereafter, the confidence score may be calculated from the distance.For example, the confidence score may be proportional to the distance.The greater the distance, the higher the confidence score. In oneexample, the relationship between the distance and the confidence scoremay be empirically set. Thus, for example, if a series of binaryclassifiers is used (e.g., one for each possible category), anelectronic purchase confirmation message may be determined to beassociated with a category having the highest confidence score.

It should be noted that variations of the above described process may beimplemented in accordance with the present disclosure. For example, ifthere are comparatively few positive examples or few negative examples,e.g., less than 20 percent, less than 15 percent, etc., a greater orlesser percentage of positive examples or negative examples may beutilized from the training data set as inputs to the machine learningalgorithm to effect a positive example weighting or negative exampleweighting. In another example, the feature space may comprise a reducedfeature space that may be determined by first performing featureselection over a number of features. For example, a feature selectionprocess may include reducing the number relevant features to those whichare most useful in a classifier to segregate electronic purchaseconfirmation messages associated with a category from those which arenot. Thus, for example, a “feature,” with a higher number of positiveexamples may be selected for inclusion in a reduced “feature set” over afeature with fewer or no positive examples, where the feature set mayinclude features comprising dimensions within the reduced feature space.For instance, the words, phrases and/or abbreviations “motor vehicle”,“department of motor vehicle” and “DMV” may be strongly associated withthe “automotive” category. However, it should be noted that a featurethat is strongly associated with negative examples may also be includedin the reduced feature set. For instance, electronic purchaseconfirmation messages in the training data set may include theabbreviation “DMV”, but none may be indicated to be associated with the“gift” category. Thus, this term/abbreviation may comprise a strong(negative) feature for the binary decision making of a classifier forthe “gift” category, and may also be selected for inclusion.

Alternatively, or in addition, a principal component analysis (PCA) maybe applied to the training data set. For instance, PCA may be applied toa hyper-dimensional space of all of the possible features that may beincluded in the feature set. In another example, PCA may be applied to ahyper-dimensional space based upon a reduced feature set (e.g., a“reduced feature space”). In one example, a hyper-plane in thehyper-dimensional space (e.g., with or without PCA transformation) maybe generated to represent an average of the values for various customertraits for all of the positive examples. In one example, a portion ofthe training data set may be set aside for use as a testing data set maybe used to verify the accuracy of the classifier.

It should also be noted that in other, further, and different examples,variations of one or more of the above described operations may beimplemented in accordance with the present disclosure. For example, adecision tree algorithm may be used instead of a SVM-based binaryclassifier. In another example, a binary k-nearest neighbor algorithmmay be utilized. In still another example, a distance-based classifiermay be used. For example, the machine learning algorithm may comprise aclustering algorithm over positive examples to generate a vector in ahyper-dimensional space representing the average of the positiveexamples. In other words, the vector may represent the “average” of thefeatures of positive example electronic purchase confirmation messages.Classification of an additional electronic purchase confirmation messagemay then comprise generating a vector representing the features of theadditional electronic purchase confirmation message, and calculating aEuclidean distance or cosine distance/similarity from the vectorrepresenting the “average” of the positive example electronic purchaseconfirmation messages. Thus, these and other modifications are allcontemplated within the scope of the present disclosure.

To further aid in understanding the present disclosure, FIG. 3illustrates an example dashboard interface 300 associated with examplesof the present disclosure for identifying electronic purchaseconfirmation messages in a plurality of electronic messages for a user.In one example, the dashboard interface 300 may be presented as agraphical user interface via a display screen of a user endpoint device,and may be manipulated and interacted with via various types of inputdevices, such as a keyboard and/or a mouse, or via voice commands,gestures via a touchscreen, inputs via a soft keyboard, and so forth. Asillustrated in FIG. 3, dashboard interface 300 may include a firstwindow comprising a category view 305. In one example, category view 305may present a number of categories, such as “food”, “entertainment”,“automobile”, “home”, “dining”, “gifts”, “vacation”, and “other”, incolumns 310, 320, 330, 340, 350, 360, 370 and 380 respectively. Asdescribed above, the categories may be defined by a user. In addition, auser may deploy new categories in addition to those already in use,e.g., via selecting the “add category” button 309 in the category view305 of the dashboard interface 300.

In one example, each of the columns 310, 320, 330, 340, 350, 360, 370and 380 may include bars representing a level or dollar amount ofpurchases from different merchants within a respective category and forthe relevant time period. In the present example, the time period may beone month, as indicated in the information contained in the dashboardinterface 305: “TIME: ONE MONTH VIEW”. To illustrate, column 310 for thecategory “food” includes bars 312-315, representing a level of purchasesrelating to a merchant M1, a merchant M2, a merchant M3, and all othermerchants (O). In one example, merchants for which less than a thresholddollar amount of purchases/spending was incurred by a user during therelevant time period may all be lumped into the “other” grouping. Forease of illustration, the bars in the other columns are not labeled.However, it should be understood that these bars may be similar to thebars 312-315 in column 310 for the “food” category.

In one example, the dashboard interface 300 may also offer a pluralityof different views, including the category view 305. For instance, thewindow/view may be changed via the “switch view” button 308. A differentview may comprise, for example, a view where columns group purchases bymerchants (e.g., a top eight merchants by dollar amount spent), wherebars may be presented within each column representing spending levelsand/or dollar amounts with respect to different purchase categories. Inthis regard, it should be noted that the organization of visualinformation in the example dashboard interface 300 and example categoryview 305 may take a different form in other, further, and additionalexamples of the present disclosure, e.g., rows for each category insteadof columns 310, 320, 330, 340, 350, 360, 370 and 380, lines instead ofbars, pie graphs for the spending levels within each category withrespect to different merchants, and so forth. In one example, the timeperiod for which information is displayed in the category view 305 maybe changed via “switch time” button 307. For example, the relevant timeperiod may be changed from one month to three months, six months, oneyear, etc.

In one example, the dashboard interface 300 provides additional windowswith more detailed information regarding a category. For example, thewindow 341 may be displayed if a user clicks on or otherwise selects thecolumn 340 from the category view 305. The window 341 may supplant thedisplay of the category view 305 within a display screen, or may befully or partially overlaid on the category view 305 within the displayscreen, for example. As illustrated in the example of FIG. 3, the window341 presents more detailed information regarding the purchases in the“home” category for merchant M9, for merchant M7 and for “other”merchants in columns 342, 343, and 344, respectively, such a date of apurchase, an amount spent, and a brief description of the item orservice.

In one example, a user may select an entry and then select variousoptions. For example, a user may have highlighted the entry 345 for a$50.00 purchase of pillows on March 1 from merchant M9. A selection ofthe “show message” button 346 may cause another window (not shown) to bedisplayed with the underlying electronic purchase confirmation messagefrom which the entry was derived. The electronic purchase confirmationmessage may be similar to the electronic message 200 illustrated in FIG.2, for instance. A selection of the “recategorize” button 347 mayprovide a list from which a user may select a different category, e.g.,“food”, “entertainment”, “automobile”, “dining”, “gifts”, “vacation”, or“other” to which the purchase associated with entry 345 should beassigned instead. For instance, in the opinion of the user, a classifiermay have improperly classified the electronic purchase confirmationmessage associated with entry 345 as being of the “home” category. Forinstance, the user may have purchased pillows as a gift for a friend,and would prefer the purchase to be associated with the “gift” categoryinstead of the “home” category.

On the other hand, a user may also verify that a purchase (and theunderlying electronic purchase confirmation message) is properlycategorized via the “verify category” button 348. In one example,electronic purchase confirmation messages that are “verified” may beused to update the classifier(s) that may be used to categorize futureelectronic purchase confirmation messages. As further illustrated in theexample of FIG. 3, the window 341 may further include a “create/editrule” button 349. For instance, the “create/edit rule” button 349 maycause an additional window (not shown) to be displayed in which a usermay define a rule for an automated action to be taken based upon varioustriggers relating to the purchase category of window 341, e.g., “home”related purchases. For instance, a user may define a rule that when awater filter is purchased, an automatic purchase of another water filterof the same type should be scheduled for three months time, six monthstime, etc. The user may indicate a specific merchant with which toschedule the automated purchase, or may define a group of approvedmerchants from which the automated purchase may be made. For example,the user may leave it to the user's endpoint device or a server toselect the most cost effective merchant from which to purchase theparticular model of water filter.

FIG. 4 illustrates an example flowchart of a method 400 for identifyingelectronic purchase confirmation messages in a plurality of electronicmessages for a user. In one example, the steps, operations, or functionsof the method 400 may be performed by any one or more of the componentsof the system 100 depicted in FIG. 1. For instance, in one example, themethod 400 is performed by the application server (AS) 114 or insightserver 164, or by AS 114 or insight server 164 in conjunction with othercomponents of the system 100. Alternatively, or in addition, one or moresteps, operations or functions of the method 400 may be implemented by acomputing device having a processor, a memory and input/output devicesas illustrated below in FIG. 5, specifically programmed to perform thesteps, functions and/or operations of the method. Although any one ofthe elements in system 100 may be configured to perform various steps,operations or functions of the method 400, the method will now bedescribed in terms of an example where steps or operations of the methodare performed by a processor, such as processor 502 in FIG. 5.

The method 400 begins at step 405 and proceeds to step 410. At step 410,the processor obtains an authorization to identify electronic purchaseconfirmation messages in a plurality of electronic messages for a userand to maintain a user purchase profile of the user. The authorizationmay be obtained from the user, or may be obtained from an account holderof an account associated with the user, such as a parent providing anauthorization with respect to a child or other family member. Forinstance, in one example, the processor may be deployed in atelecommunication network and may perform the method 400 for subscribersof the telecommunication network service provider and/or subscribers'household members. In another example, the processor may be deployed byanother entity and may perform the method 400 for subscribers of aservice for identifying electronic purchase confirmation messages in aplurality of electronic messages for a user, in accordance with thepresent disclosure. In one example, the user or an account holder mayalso define purchase categories into which electronic purchaseconfirmation messages are to be categorized by the processor. Followingstep 410, the method 400 may proceed to step 430 or to optional step420.

At optional step 420, the processor may receive a rule for an automatedaction. In one example, the rule may be entered by the user or by anaccount holder associated with the user via a dashboard interface suchas illustrated in FIG. 3. The rule may be a rule for an automated actionto be performed in accordance with the user purchase profile, asdescribed in greater detail in connection with step 490.

At step 430, the processor collects the plurality of electronic messagesfor the user. The plurality of electronic messages may be collected fromone or more message servers of a telecommunication network, e.g., anemail server, an SMS server, etc., or from message servers of one ormore other providers, such as an email provider, an SMS provider, anover-the-top messaging provider, and so forth. In still another example,the plurality of electronic messages for the user may be obtained from adevice of the user. For instance, the device of the user may forward theelectronic messages to the processor after the electronic messages werefirst downloaded by the device of the user. However, in still anotherexample, the processor may be a processor of the device of the user. Theplurality of electronic messages may take various forms such as: emails,SMS messages, MMS messages, messages in a format utilized by anover-the-top messaging application, and so forth.

At step 440, the processor identifies the electronic purchaseconfirmation messages in the plurality of electronic messages. In oneexample, step 440 may include processing the plurality of electronicmessages to identify purchase confirmation-related words, phrases,symbols, or monetary character sets, e.g., as described above inconnection with the example of FIG. 2. For instance, in one example, anelectronic message may be determined to be an electronic purchaseconfirmation message when a certain threshold is reached, such as athreshold number of purchase confirmation-related words, phrases,symbols, or monetary character sets, a threshold percentage of purchaseconfirmation-related words, phrases, symbols, or monetary character setswith respect to a total number of characters or words of the message,and so forth.

At step 450, the processor determines a purchase category and a purchaseamount from each of the electronic purchase confirmation messages thatis identified. In one example, the purchase amount may be identifiedbased upon recognizing monetary character sets, as described above, andthen selecting the highest dollar amount within the number of monetarycharacter sets that is found. In another example, the purchase amountmay be determined by selecting the dollar amount from a monetarycharacter set that follows certain keywords or phrases, such as “totalpurchase amount:” for example.

In addition, as described above in connection with the example of FIG.2, in one example, a machine learning algorithm may be used to generatea classifier, such as a support vector machine (SVM), e.g., a binaryclassifier and/or a linear binary classifier, a multi-class classifier,a kernel-based SVM, etc., a distance-based classifier, e.g., a Euclideandistance-based classifier, or the like, that may be used to determine acategory of a purchase indicated in an electronic purchase confirmationmessage. In one example, the machine learning algorithm may be used togenerate a series of classifiers, e.g., one for each of a plurality ofpossible purchase categories that may be defined by a user. In oneexample, various words, phrases and/or abbreviations, or combinations ofcharacters, such as a domain name, may comprise “features” that areuseable to categorize an electronic purchase confirmation message asbeing related to one of a plurality of purchase categories. Forinstance, the words and phrases “ticket order”, “seats”, “row”, “ticketprice”, “ticket”, etc., may be indicative that an electronic purchaseconfirmation message is for a purchase of a ticket, which may bestrongly correlated with “entertainment” (e.g., tickets to sportingevents, concerts, etc.) and/or “vacation” (e.g., airline tickets)categories.

Accordingly, in one example, step 450 may include the processor applyinga classifier, or classifiers, to the features of each of the electronicpurchase confirmation message to determine whether the electronicpurchase confirmation message is or is not associated with each of aplurality of categories. In an example where multiple classifiers areapplied, the category that is determined for a given electronic purchaseconfirmation message may be a category for which a classifier associatedwith the category produced a highest confidence score.

At step 460, the processor obtains a verification of the purchasecategory that is determined from each of the electronic purchaseconfirmation messages that is identified. In one example, theverification may be used to update the classifier(s) that may be used tocategorize additional electronic purchase confirmation messages. In oneexample, the verification may be provided by the user or by an accountholder via a dashboard interface, such as described above in connectionwith the example of FIG. 3. For instance, a parent may verify thecategorizations of electronic purchase confirmation messages for a childor other household member.

At step 470, the processor updates the user purchase profile inaccordance with the purchase category and the purchase amount from eachof the electronic purchase confirmation messages that is identified. Forinstance, the user purchase profile may track purchases in differentcategories, from different merchants, and/or for different products overvarious time periods. Following step 470, the method 400 may proceed tostep 490 or to optional step 480.

At optional step 480, the processor may present, via a dashboardinterface on an electronic device of the user, the user purchase profilethat is updated. For instance, various visualizations of the userpurchase profile may be provided via a dashboard interface, such asdescribed above and illustrated in the example of FIG. 3.

At step 490, the processor performs an automated action in accordancewith the user purchase profile that is updated. In one example, the useror an account holder may define a rule for the automated action atoptional step 420, which may then be implemented by the processor atstep 490. For example, the automated action may comprise automaticallyordering an item from a merchant for the user based upon the userpurchase profile, and in accordance with a rule that may be provided atoptional step 420. For instance, the user may create a rule that when awater filter is purchased, an automatic purchase of another water filterof the same type should be scheduled for 3 months time, 6 months time,etc. The user may indicate a specific merchant with which to schedulethe automated purchase, or may define a group of approved merchants fromwhich the automated purchase may be made. In another example, the rulemay be to restrict access by an electronic device of the user to amerchant website, based upon the user purchase profile. For instance, aparent may set such a rule for a child so that the child is hinderedfrom spending more than a certain amount, or making more than a certainnumber of purchases from a particular merchant, spending more than acertain amount, or making more than a certain number of purchases in aparticular purchase category, and so forth, within a given time period.In another example, the rule may restrict a usage of an account (e.g., acredit card account, credits of a video game account, a bank account,etc.) by the user based upon the user purchase profile. The rule may beset by the user for himself/herself, or by an account holder withrespect to the activities of the user.

Alternatively, or in addition, the automated action may be takenaccording to a rule defined by a telecommunication network operator,rather than the user. For example, the automated action may compriseallocating a network resource of the telecommunication network basedupon the user purchase profile, or disabling a network resource of thetelecommunication network based upon the user purchase profile. Forinstance, if a user has purchased greater than a certain dollar amountof electronic devices within the last year, the telecommunicationnetwork operator may upgrade the bandwidth of a connection to the user'shome, may deploy additional resources to an area associated with theuser such as additional media servers, CDN edge caches, etc., mayactivate a marketing automation platform to direct automatedcommunications to device(s) of the user, and so forth. However, inanother example, the automated action may comprise disabling a networkresource of a telecommunication service provider network based upon theuser purchase profile. For instance, if a user has not recentlypurchased more than a certain amount (e.g., in an “electronics”category), it may be assumed that the household is not interested incutting-edge technology and are not heavy data users. Thus, theautomated action may comprise disabling a network resource of atelecommunication service provider network based upon the user purchaseprofile. For instance, a picocell, a femtocell, a remote radio head(RRH) or baseband unit (BBU), network function virtualizationinfrastructure (NFVI), or the like that is activated and assigned to acoverage area of the user's home or where the user otherwise may spend asignificant amount of time may be deallocated, deactivated, and/orreassigned based upon an anticipation that the user will not contributea significant load to the telecommunication network.

Following step 490, the method 400 proceeds to step 495 where the methodends. It should be noted that the method 400 may be expanded to includeadditional steps or may be modified to include additional operationswith respect to the steps outlined above. For example, the method 400may be expanded to maintain a purchase model across multiple householdmembers. In such an example, the processor may obtain electronicmessages for all of the household members that are associated with thepurchase model, determine electronic purchase confirmation messages inthe electronic messages for the different household members, and soforth.

In addition, although not specifically specified, one or more steps,functions or operations of the method 400 may include a storing,displaying and/or outputting step as required for a particularapplication. In other words, any data, records, fields, and/orintermediate results discussed in the method 400 can be stored,displayed and/or outputted either on the device executing the method400, or to another device, as required for a particular application.Furthermore, steps, blocks, functions, or operations in FIG. 4 thatrecite a determining operation or involve a decision do not necessarilyrequire that both branches of the determining operation be practiced. Inother words, one of the branches of the determining operation can bedeemed as an optional step. In addition, one or more steps, blocks,functions, or operations of the above described method 400 may compriseoptional steps, or can be combined, separated, and/or performed in adifferent order from that described above, without departing from theexamples of the present disclosure.

As such, the present disclosure provides at least one advancement in thetechnical fields of telecommunication service provider networkoperations and online electronic user purchase profiling. In particular,examples of the present disclosure automatically: determine whichelectronic messages of a user are electronic purchase confirmationmessages, determine purchase amounts and purchase categories from theelectronic purchase confirmation messages, e.g., via one or moreclassifiers based upon a machine learning algorithm, update a userpurchase profile, and perform an automated action in accordance with theuser purchase profile that is updated. In one example, this leads tomore efficient operating of a telecommunication network. In addition, inone example, a user is also provided greater insight into his or herpurchasing in a variety of categories and with a variety of merchantsover various time periods.

The present disclosure also provides a transformation of data, e.g.,electronic messages generated by various devices in a telecommunicationsystem may be gathered, analyzed, and transformed into additional dataor new data comprising one or more classifiers that may be used todetermine purchase categories. In addition, new data is generatedinsofar as the updating of a user purchase profile may cause newinstructions to be generated and sent to cause automated actions to beperformed, such as deploying or activating new network components.

Finally, examples of the present disclosure improve the functioning of acomputing device, e.g., a server

Namely, a server deployed in the telecommunication network or in anetwork of another service provider, is improved by the use ofelectronic messages of a user that are collected and processed via theoperations of the present disclosure to determine which of theelectronic messages are electronic purchase confirmation messages, toautomatically determine purchase amounts and purchase categories fromthe electronic purchase confirmation messages, e.g., via one or moreclassifiers based upon a machine learning algorithm, to update a userpurchase profile, and to perform an automated action in accordance withthe user purchase profile that is updated. Furthermore, in an examplewhere operations of the present disclosure are implemented in a serverof a telecommunication network, the telecommunication network may alsobe transformed into a different state and/or have a different physicalcomposition via the automatic allocation of one or more networkresources in accordance with examples of the present disclosure.

FIG. 5 depicts a high-level block diagram of a computing devicespecifically programmed to perform the functions described herein. Asdepicted in FIG. 5, the system 500 comprises one or more hardwareprocessor elements 502 (e.g., a central processing unit (CPU), amicroprocessor, or a multi-core processor), a memory 504 (e.g., randomaccess memory (RAM) and/or read only memory (ROM)), a module 505 foridentifying electronic purchase confirmation messages in a plurality ofelectronic messages for a user, and various input/output devices 506(e.g., storage devices, including but not limited to, a tape drive, afloppy drive, a hard disk drive or a compact disk drive, a receiver, atransmitter, a speaker, a display, a speech synthesizer, an output port,an input port and a user input device (such as a keyboard, a keypad, amouse, a microphone and the like)). Although only one processor elementis shown, it should be noted that the computing device may employ aplurality of processor elements. Furthermore, although only onecomputing device is shown in the figure, if the method 400 as discussedabove is implemented in a distributed or parallel manner for aparticular illustrative example, i.e., the steps of the method, or theentire method is implemented across multiple or parallel computingdevices, then the computing device of this figure is intended torepresent each of those multiple computing devices.

Furthermore, one or more hardware processors can be utilized insupporting a virtualized or shared computing environment. Thevirtualized computing environment may support one or more virtualmachines representing computers, servers, or other computing devices. Insuch virtualized virtual machines, hardware components such as hardwareprocessors and computer-readable storage devices may be virtualized orlogically represented. The one or more hardware processors 502 can alsobe configured or programmed to cause other devices to perform one ormore operations as discussed above. In other words, the one or morehardware processors 502 may serve the function of a central controllerdirecting other devices to perform the one or more operations asdiscussed above.

It should be noted that the present disclosure can be implemented insoftware and/or in a combination of software and hardware, e.g., usingapplication specific integrated circuits (ASIC), a programmable gatearray (PGA) including a Field PGA, or a state machine deployed on ahardware device, a computing device or any other hardware equivalents,e.g., computer readable instructions pertaining to the method discussedabove can be used to configure a hardware processor to perform thesteps, functions and/or operations of the above disclosed method. In oneexample, instructions and data for the present module or process 505 foridentifying electronic purchase confirmation messages in a plurality ofelectronic messages for a user (e.g., a software program comprisingcomputer-executable instructions) can be loaded into memory 504 andexecuted by hardware processor element 502 to implement the steps,functions or operations as discussed above in connection with theillustrative method 400. Furthermore, when a hardware processor executesinstructions to perform “operations,” this could include the hardwareprocessor performing the operations directly and/or facilitating,directing, or cooperating with another hardware device or component(e.g., a co-processor and the like) to perform the operations.

The processor executing the computer readable or software instructionsrelating to the above described method can be perceived as a programmedprocessor or a specialized processor. As such, the present module 505for identifying electronic purchase confirmation messages in a pluralityof electronic messages for a user (including associated data structures)of the present disclosure can be stored on a tangible or physical(broadly non-transitory) computer-readable storage device or medium,e.g., volatile memory, non-volatile memory, ROM memory, RAM memory,magnetic or optical drive, device or diskette and the like. Furthermore,a “tangible” computer-readable storage device or medium comprises aphysical device, a hardware device, or a device that is discernible bythe touch. More specifically, the computer-readable storage device maycomprise any physical devices that provide the ability to storeinformation such as data and/or instructions to be accessed by aprocessor or a computing device such as a computer or an applicationserver.

While various examples have been described above, it should beunderstood that they have been presented by way of illustration only,and not a limitation. Thus, the breadth and scope of any aspect of thepresent disclosure should not be limited by any of the above-describedexamples, but should be defined only in accordance with the followingclaims and their equivalents.

What is claimed is:
 1. A device comprising: a processor; and acomputer-readable storage medium storing instructions which, whenexecuted by the processor, cause the processor to perform operations,the operations comprising: obtaining an authorization to identifyelectronic purchase confirmation messages in a plurality of electronicmessages for a user and to maintain a user purchase profile of the user;collecting the plurality of electronic messages for the user;identifying the electronic purchase confirmation messages in theplurality of electronic messages; determining a purchase category and apurchase amount from each of the electronic purchase confirmationmessages that is identified; obtaining a verification of the purchasecategory that is determined from each of the electronic purchaseconfirmation messages that is identified; updating the user purchaseprofile in accordance with the purchase category and the purchase amountfrom each of the electronic purchase confirmation messages that isidentified; and performing an automated action in accordance with theuser purchase profile that is updated.
 2. The device of claim 1, whereinthe plurality of electronic messages includes at least one of: an email;a short message service message; or a message of an over-the-topmessaging application.
 3. The device of claim 2, wherein the pluralityof electronic messages for the user is obtained from at least one of: anemail server; a short message service server; a server of theover-the-top messaging application; or an electronic device of the user.4. The device of claim 1, wherein the identifying the electronicpurchase confirmation messages in the plurality of electronic messagescomprises identifying at least one of purchase confirmation related:words, phrases, symbols, or monetary character sets.
 5. The device ofclaim 1, wherein the plurality of electronic messages includeselectronic messages from at least one of: a server of a merchantengaging in a sale with the user; or a server of a payment processingentity processing a payment for a purchase of the user.
 6. The device ofclaim 1, wherein the performing the automated action comprises:restricting a usage of an account by the user based upon the userpurchase profile.
 7. The device of claim 1, wherein the performing theautomated action comprises: restricting access by an electronic deviceof the user to a merchant website, based upon the user purchase profile.8. The device of claim 1, wherein the performing the automated actioncomprises: automatically ordering an item from a merchant for the userbased upon the user purchase profile.
 9. The device of claim 1, whereinthe operations further comprise: presenting, via a dashboard interfaceon an electronic device of the user, the user purchase profile that isupdated.
 10. The device of claim 9, wherein the verification of thepurchase category that is determined from each of the electronicpurchase confirmation messages that is identified is obtained from theuser via the dashboard interface.
 11. The device of claim 1, wherein theoperations further comprise: receiving a rule for the automated action.12. The device of claim 11, wherein the rule is received via a dashboardinterface from the user or from an account holder associated with theuser.
 13. The device of claim 1, wherein the authorization is obtainedfrom the user.
 14. The device of claim 1, wherein the authorization isobtained from an account holder associated with the user.
 15. The deviceof claim 1, wherein the verification is obtained from an account holderassociated with the user.
 16. The device of claim 1, wherein thepurchase category from each of the electronic purchase confirmationmessages that is identified is determined in accordance with a pluralityof purchase categories provided by the user.
 17. The device of claim 1,wherein the purchase category from each of the electronic purchaseconfirmation messages that is identified is determined in accordancewith a plurality of purchase categories provided by an account holderassociated with the user.
 18. A method comprising: obtaining, by aprocessor, an authorization to identify electronic purchase confirmationmessages in a plurality of electronic messages for a user and tomaintain a user purchase profile of the user; collecting, by theprocessor, the plurality of electronic messages for the user;identifying, by the processor, the electronic purchase confirmationmessages in the plurality of electronic messages; determining, by theprocessor, a purchase category and a purchase amount from each of theelectronic purchase confirmation messages that is identified; obtaining,by the processor, a verification of the purchase category that isdetermined from each of the electronic purchase confirmation messagesthat is identified; updating, by the processor, the user purchaseprofile in accordance with the purchase category and the purchase amountfrom each of the electronic purchase confirmation messages that isidentified; and performing, by the processor, an automated action inaccordance with the user purchase profile that is updated.
 19. Anon-transitory computer-readable medium storing instructions which, whenexecuted by a processor, cause the processor to perform operations, theoperations comprising: obtaining an authorization to identify electronicpurchase confirmation messages in a plurality of electronic messages fora user and to maintain a user purchase profile of the user; collectingthe plurality of electronic messages for the user; identifying theelectronic purchase confirmation messages in the plurality of electronicmessages; determining a purchase category and a purchase amount fromeach of the electronic purchase confirmation messages that isidentified; obtaining a verification of the purchase category that isdetermined from each of the electronic purchase confirmation messagesthat is identified; updating the user purchase profile in accordancewith the purchase category and the purchase amount from each of theelectronic purchase confirmation messages that is identified; andperforming an automated action in accordance with the user purchaseprofile that is updated.
 20. The non-transitory computer-readable mediumof claim 19, wherein the performing the automated action comprises:automatically ordering an item from a merchant for the user based uponthe user purchase profile.